package com.um.jdy.common.charge.entity.po;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.um.springboot.starter.orm.entity.BaseEntity;
import lombok.Data;
import java.util.Date;

/**
 * 充电订单表
 * @TableName charge_order
 */
@TableName(value ="charge_order")
@Data
public class Order extends BaseEntity {

	/**
	 * id
	 */
	 @TableId
	 private String chargeOrderId;

	/**
	 * 租户ID
	 */
	 private String comId;

	/**
	 * 用户id
	 */
	 private String memberUserId;

	/**
	 * 场站id
	 */
	 private String deviceStationId;

	/**
	 * 商户id
	 */
	 private String platformMerchantId;

	/**
	 * 订单号
	 */
	 private String orderNo;

	/**
	 * 收费方案ID
	 */
	 private String deviceFeeId;

	/**
	 * 商户订单号
	 */
	 private String outTradeNo;

	/**
	 * 充电桩id
	 */
	 private String devicePileId;

	/**
	 * 插座id
	 */
	 private String deviceGunId;

	/**
	 * 充电桩名称
	 */
	 private String deviceName;

	/**
	 * 充电桩IMEI
	 */
	 private String deviceImei;

	/**
	 * 充电桩码
	 */
	 private String deviceCode;

	/**
	 * 设备类型：EB-单车桩 EV-汽车桩 EBox-充电柜 BSB-换电柜 PB-充电宝
	 */
	 private String deviceType;

	/**
	 * 端口号
	 */
	 private Integer port;

	/**
	 * 创建订单时间
	 */
	 private Date createTime;

	/**
	 * 信用类型:deposit-押金 wx_score-微信支付分
	 */
	 private String creditType;

	/**
	 * 开始时间
	 */
	 private Date startTime;

	/**
	 * 截止时间
	 */
	 private Date endTime;

	/**
	 * 收费单价规格（如：1元3小时间）
	 */
	 private String itemPrice;

	/**
	 * 实时统计充电时长(秒)
	 */
	 private Integer duration;

	/**
	 * 服务费金额(分)
	 */
	 private Integer serviceFee;

	/**
	 * 电费金额(分)
	 */
	 private Integer energyFee;

	/**
	 * 充电电量（W/h）
	 */
	 private Integer chargeCapacity;

	/**
	 * 实际充电金额(分)
	 */
	 private Integer chargeAmount;

	/**
	 * 最终订单金额
	 */
	 private Integer orderAmount;

	/**
	 * 支付充电时长（秒）
	 */
	 private Integer paySeconds;

	/**
	 * 支付金额(分)
	 */
	 private Integer payAmount;

	/**
	 * 支付方式 Wxpay-微信支付，Wallet-余额支付 Alipay-支付宝支付 Bank-银行卡 Deposit-押金支付 None-无支付
	 */
	 private String payWay;

	/**
	 * 支付时间
	 */
	 private Date payTime;

	/**
	 * 支付状态，UnPayed-未支付，Payed-已支付
	 */
	 private String payStatus;

	/**
	 * 订单状态 NotStarted-未充电｜Charging-充电中｜Completed-充电完成 | Failure-启动失败 | Cancel-已取消
	 */
	 private String status;

	/**
	 * 结束类型：按不同订单的前缀枚举来区分
	 */
	 private String endType;

	/**
	 * 退款金额(分)
	 */
	 private Integer returnAmount;

	/**
	 * 退款到 Wxpay-微信支付，Wallet-余额支付 Alipay-支付宝支付 Bank-银行卡 Deposit-押金支付
	 */
	 private String returnWay;

	/**
	 * 退款发生时间
	 */
	 private Date returnTime;

	/**
	 * 退款状态，None-无退款，Success-退款成功，Failure-退款失败
	 */
	 private String returnStatus;

	/**
	 * 利润(分)公式=充电金额-所有佣金
	 */
	 private Integer profit;

	/**
	 * 是否异常：No-否，Yes-是
	 */
	 private String isException;

	/**
	 * 异常状态，No-待处理，Yes-已处理
	 */
	 private String exceptionStatus;

	/**
	 * 异常类型：按不同订单的前缀枚举来区分
	 */
	 private String exceptionType;

	/**
	 * 是否免费充电
	 */
	 private String isFree;

	/**
	 * 免费充电金额（分）
	 */
	 private Integer freeAmount;

	/**
	 * 是否刷卡订单：No-否，Yes-是
	 */
	 private String isCard;

	/**
	 * 是否投币订单：No-否，Yes-是
	 */
	 private String isCoin;

	/**
	 * 是否月卡订单：No-否，Yes-是
	 */
	 private String isMonth;

	/**
	 * 远程停止次数，大于1说明停止不了，平台应该自己结束
	 */
	 private Integer remoteStopCount;

	/**
	 * 是否分账
	 */
	 private String isProfitSharing;

	/**
	 * 分账状态
	 */
	 private String profitSharingStatus;

	/**
	 * 支付服务商订单号
	 */
	 private String transactionId;

	/**
	 * 商户分账订单号
	 */
	 private String profitSharingOutTradeNo;

	/**
	 * 优惠券id
	 */
	 private String activityCouponsUserId;

	/**
	 * 优惠券金额
	 */
	 private Integer couponsAmount;

	/**
	 * 优惠券描述
	 */
	 private String couponsRemark;

	/**
	 * 满减金额
	 */
	 private Integer discountsAmount;

	/**
	 * 满减活动类型：Money-满减金额｜Discount-满减折扣
	 */
	 private String discountsType;

	/**
	 * 满减活动描述
	 */
	 private String discountsRemark;

	/**
	 * 自动使用优惠券
	 */
	 private String autoUseCoupons;

	/**
	 * 是否删除
	 */
	 private String isDelete;

	/**
	 * 删除时间
	 */
	 private Date deleteTime;
	//是否已宝付清分1是0否
	private Integer isBaofuSplit;
	//是否已宝付清分1是0否 消防服务费
	private Integer isBaofuFireSplit;
}
